Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Node / ReticulumProjects / MeshChatX.git / files / scripts / ci / github-slsa-hashes-desktop-dist.sh

Displaying Raw • Download


scripts/ci/github-slsa-hashes-desktop-dist.sh legacy/win7 (159b2358) Text, 1.27 KB

T8b949e#!/usr/bin/env bash
T8b949e# Emit base64-encoded sha256sum lines for Electron outputs under downloaded artifact roots.
T8b949e# Subject paths are the relative paths passed to sha256sum (stable for slsa-verifier).
Tffa657set -euo pipefail

Tff7b72if Tff7b72[ Ta5d6ff"Te6edf3$#Ta5d6ff" -lt T79c0ff1 Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffusage: Te6edf3$0Ta5d6ff <root> [root...]Ta5d6ff" >Tb4b4b4&T79c0ff2
Tffa657exit T79c0ff1
Tff7b72fi

Te6edf3rootsTff7b72=Tff7b72(Tff7b72)
Tff7b72for d Tff7b72in Ta5d6ff"Te6edf3$@Ta5d6ff"Tb4b4b4; Tff7b72do
Tff7b72[ -d Ta5d6ff"Te6edf3$dTa5d6ff" Tff7b72] Tff7b72&& Te6edf3rootsTff7b72+=Tff7b72(Ta5d6ff"Te6edf3$dTa5d6ff"Tff7b72)
Tff7b72done
Tff7b72if Tff7b72[ Ta5d6ff"Tffd700${#Te6edf3rootsTb4b4b4[@]Tffd700}Ta5d6ff" -eq T79c0ff0 Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffNo existing directories in: Te6edf3$*Ta5d6ff (emitting empty hashes)Ta5d6ff" >Tb4b4b4&T79c0ff2
Tff7b72if Tff7b72[ -n Ta5d6ff"Tffd700${Te6edf3GITHUB_OUTPUTTff7b72:-Tffd700}Ta5d6ff" Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"hashes=" >>Ta5d6ff"Te6edf3$GITHUB_OUTPUTTa5d6ff"
Tff7b72else
Tffa657printf Ta5d6ff'%s\n' Ta5d6ff""
Tff7b72fi
Tffa657exit T79c0ff0
Tff7b72fi

Te6edf3tmpTff7b72=Ta5d6ff"Tff7b72$(mktempTff7b72)Ta5d6ff"
Tffa657trap Ta5d6ff'rm -f "$tmp"' EXIT

find Ta5d6ff"Tffd700${Te6edf3rootsTb4b4b4[@]Tffd700}Ta5d6ff" -type f Tffea00\( Tffea00\
-name Ta5d6ff'*.exe' -o -name Ta5d6ff'*.dmg' -o -name Ta5d6ff'*.blockmap' -o -name Ta5d6ff'*.yml' -o -name Ta5d6ff'*.yaml' Tffea00\
Tffea00\) ! -path Ta5d6ff'*/.*' -print0 Tffea00\
Tb4b4b4| Te6edf3LC_ALLTff7b72=C sort -z Tffea00\
Tb4b4b4| xargs -0r sha256sum >Ta5d6ff"Te6edf3$tmpTa5d6ff"

Tff7b72if Tff7b72[ ! -s Ta5d6ff"Te6edf3$tmpTa5d6ff" Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffNo matching dist files under: Tffd700${Te6edf3rootsTb4b4b4[*]Tffd700}Ta5d6ff (emitting empty hashes)Ta5d6ff" >Tb4b4b4&T79c0ff2
Te6edf3b64Tff7b72=Ta5d6ff""
Tff7b72if Tff7b72[ -n Ta5d6ff"Tffd700${Te6edf3GITHUB_OUTPUTTff7b72:-Tffd700}Ta5d6ff" Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffhashes=Tffd700${Te6edf3b64Tffd700}Ta5d6ff" >>Ta5d6ff"Te6edf3$GITHUB_OUTPUTTa5d6ff"
Tff7b72else
Tffa657printf Ta5d6ff'%s\n' Ta5d6ff"Te6edf3$b64Ta5d6ff"
Tff7b72fi
Tffa657exit T79c0ff0
Tff7b72fi

Te6edf3b64Tff7b72=Ta5d6ff"Tff7b72$(base64 -w0 <Ta5d6ff"Te6edf3$tmpTa5d6ff"Tff7b72)Ta5d6ff"
Tff7b72if Tff7b72[ -n Ta5d6ff"Tffd700${Te6edf3GITHUB_OUTPUTTff7b72:-Tffd700}Ta5d6ff" Tff7b72]Tb4b4b4; Tff7b72then
Tffa657echo Ta5d6ff"Ta5d6ffhashes=Tffd700${Te6edf3b64Tffd700}Ta5d6ff" >>Ta5d6ff"Te6edf3$GITHUB_OUTPUTTa5d6ff"
Tff7b72else
Tffa657printf Ta5d6ff'%s\n' Ta5d6ff"Te6edf3$b64Ta5d6ff"
Tff7b72fi


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────